@强制输出
@输出名("影视在线")
类 影视在线 : 窗口

	@布局配置([[根布局=真,宽度=-1,高度=-1,纵向布局=真,背景颜色=-1576716]])
	变量 线性布局1 : 线性布局
	@布局配置([[父布局=线性布局1,宽度=-1,高度DP=45,左内边距DP=18,右内边距DP=18,@上外边距DP=10]])
	变量 相对布局1 : 相对布局
	@布局配置([[父布局=相对布局1,对齐方式=16,内容="影视",粗体=真,字体大小=20,字体颜色=-16777216,高度=-1,ID=1]])
	变量 文本框1 : 文本框
	@布局配置([[父布局=相对布局1,高度=-1,内容="播放器",对齐方式=16,@位于某组件右边=1,@左外边距DP=1,纵向偏移DP=2,字体大小=16,粗体=真]])
	变量 文本框2 : 文本框
	@布局配置([[父布局=相对布局1,高度=-1,@位于布局右边=真,对齐方式=8388629,可视=真,宽度DP=120]])
	变量 线性布局2 : 线性布局
	@布局配置([[父布局=线性布局2,宽度DP=21,高度DP=21,图片资源="../../../素材/Png/切换.png"]])
	变量 图片框1 : 图片框
	@布局配置([[父布局=线性布局1,宽度=-1,高度=-2,对齐方式=1,纵向布局=真,左内边距DP=20,右内边距DP=20,上内边距DP=10]])
	变量 线性布局3 : 线性布局
	@布局配置([[父布局=线性布局3,宽度=-1,高度DP=40,圆角=75,卡片阴影=0,@下外边距DP=15]])
	变量 卡片布局1 : 卡片布局
	@布局配置([[父布局=卡片布局1,宽度=-1,高度=-1,透明度=1.0,背景颜色=-328966]])
	变量 线性布局4 : 相对布局
	@布局配置([[父布局=线性布局4,宽度=-1,高度=-1,左内边距DP=15,右内边距DP=3,上内边距DP=2,下内边距DP=2,@位于某组件左边=1]])
	变量 线性布局8 : 线性布局
	@布局配置([[父布局=线性布局8,宽度=-1,高度=-1,内边距=0,背景颜色=16777215,提示文本="输入搜索内容",单行输入=真,对齐方式=16,字体颜色=-16777216,单行显示=真,字体大小=16,粗体=真,内容="",显示光标=真]])
	变量 输入搜索内容 : 编辑框
	@布局配置([[父布局=线性布局4,宽度DP=60,高度=-1,ID=1,@位于布局左边=假,@位于布局右边=真]])
	变量 搜索按钮 : 相对布局
	@布局配置([[父布局=搜索按钮,圆角=75,卡片阴影=0,宽度=-1,横向偏移DP=-3,高度DP=35,@位于布局中间=真,@位于布局左边=假,@位于布局右边=真]])
	变量 卡片布局4 : 卡片布局
	@布局配置([[父布局=卡片布局4,宽度=-1,高度=-1,背景颜色=-11433996]])
	变量 线性布局7 : 线性布局
	@布局配置([[父布局=搜索按钮,圆角=0,卡片阴影=0,高度DP=35,@位于布局中间=真,背景颜色=-11433996,@位于布局右边=假,宽度DP=25,@位于布局左边=真]])
	变量 卡片布局5 : 卡片布局
	@布局配置([[父布局=搜索按钮,@位于布局中间=真,@位于布局右边=假,内容="搜索",粗体=真,字体大小=17,@右外边距DP=5,字体颜色=-1,@位于布局左边=假,横向偏移DP=-2]])
	变量 文本框3 : 文本框
	@布局配置([[父布局=线性布局1,宽度=-1,高度=-1,左内边距DP=20,右内边距DP=20]])
	变量 线性布局5 : 线性布局
	@布局配置([[父布局=线性布局5,宽度=-1,高度=-1,启用下拉刷新功能=假,启用上拉加载功能=假]])
	变量 智能刷新布局1 : 智能刷新布局
	@布局配置([[父布局=智能刷新布局1,宽度=-1,高度=-1,显示滑块条=假,始终显示快速滚动条=假,列数=3]])
	变量 自定义宫格列表框1 : 自定义宫格列表框

	变量 页码:整数=1
	变量 网络工具1:网络工具
	变量 标题集合:文本集合
	变量 链接集合:文本集合
	变量 图片集合:文本集合
	变量 集数集合:文本集合
	变量 对象集合:集合
	变量 关键词:文本
	变量 当前接口:整数=0
	变量 获取列表:Oks异步
	变量 内置接口链接:文本集合
	变量 内置接口标题:文本集合={"默认","速播","无尽","豪华","最大","百度","U库","极速","非凡","小猫"}
	事件 影视在线:创建完毕()
		订阅事件()
		本对象.屏幕方向 = 1
		本对象.显示标题栏 =假
		本对象.状态栏字体黑色 = 真
		本对象.状态栏颜色 = -1576716
		本对象.导航栏颜色 = -1576716
		code getWindow().setSoftInputMode(2);

		共享数据.初始化(本对象,"影视接口")
		当前接口=共享数据.取整数("影视选中接口")

		//0_默认
		内置接口链接.添加成员("https://ikunzyapi.com/api.php/provide/vod/at/json/?ac=videolist")
		//速播
		内置接口链接.添加成员("https://subocaiji.com/api.php/provide/vod/from/subm3u8/at/json/?ac=videolist")
		//1_无尽
		内置接口链接.添加成员("https://api.wujinapi.me/api.php/provide/vod/from/wjm3u8/at/json/?ac=videolist")
		//2_豪华
		内置接口链接.添加成员("https://hhzyapi.com/api.php/provide/vod/from/hhm3u8/at/json/?ac=videolist")
		//3_奇虎
		//内置接口链接.添加成员("https://caiji.qhzyapi.com/api.php/provide/vod/from/qhm3u8/at/json/?ac=videolist")
		//4_最大
		内置接口链接.添加成员("https://api.zuidapi.com/api.php/provide/vod/from/zuidam3u8/at/json/?ac=videolist")
		//5_百度
		内置接口链接.添加成员("https://api.apibdzy.com/api.php/provide/vod/from/dbm3u8/at/json/?ac=videolist")
		//6_U库
		内置接口链接.添加成员("https://api.ukuapi.com/api.php/provide/vod/from/ukm3u8/at/json/?ac=videolist")
		//7_极速
		内置接口链接.添加成员("https://jszyapi.com/api.php/provide/vod/from/jsm3u8/at/json/?ac=videolis")
		//8_非凡
		内置接口链接.添加成员("http://cj.ffzyapi.com/api.php/provide/vod/from/ffm3u8/at/json/?ac=videolist")
		//9_飞速
		//内置接口链接.添加成员("https://www.feisuzyapi.com/api.php/provide/vod/from/fsm3u8/at/json/?ac=videolist")
		//10_小猫
		内置接口链接.添加成员("http://cj.xiaomaomi.tv/api.php/provide/vod/at/json/?ac=videolist")
		//11_火花
		//内置接口链接.添加成员("http://cj.huohua.vip/api.php/provide/vod/at/json/?ac=videolist")
		/*
		//差异接口_备用
		//1_红牛@
		内置接口链接.添加成员("https://www.hongniuzy2.com/api.php/provide/vod/from/hnm3u8/at/json/?ac=videolist")
		//2_综合@
		内置接口链接.添加成员("https://caiji.yueai55.cc:2277/yuelove.php/provide/vod/at/json/?ac=videolist")
		//3_闪电@
		内置接口链接.添加成员("https://xsd.sdzyapi.com/api.php/provide/vod/from/sdm3u8/at/json/?ac=videolist")
		//4_新浪@
		内置接口链接.添加成员("https://api.xinlangapi.com/xinlangapi.php/provide/vod/from/xlm3u8/at/json/?ac=videolist")
		//6_快车@
		内置接口链接.添加成员("https://caiji.kczyapi.com/api.php/provide/vod/from/kcm3u8/at/json/?ac=videolist")
		//7_暴风@
		内置接口链接.添加成员("https://pbs.bfzyapi.com/api.php/provide/vod/at/json/?ac=videolist")
		//8_快看@
		内置接口链接.添加成员("https://kuaikan-api.com/api.php/provide/vod/from/kuaikan/at/json/?ac=videolist")
		//9_乐视@
		内置接口链接.添加成员("https://leshiapi.com/api.php/provide/vod/at/json/?ac=videolist")
		//10_索尼@
		内置接口链接.添加成员("https://suoniapi.com/api.php/provide/vod/from/snm3u8/at/json/?ac=videolist")
		//11_天空@
		内置接口链接.添加成员("https://m3u8.tiankongapi.com/api.php/provide/vod/at/xml/?ac=videolist")
		//12_淘片@
		内置接口链接.添加成员("https://taopianapi.com/cjapi/mc10/vod/json.html?ac=videolist")
		//13_ikun@
		内置接口链接.添加成员("https://ikunzyapi.com/api.php/provide/vod/from/ikm3u8/at/json/?ac=videolist")
		//24_金鹰@
		内置接口链接.添加成员("https://jyzyapi.com/provide/vod/from/jinyingm3u8/at/json/?ac=videolist")
		//25_量子@
		内置接口链接.添加成员("https://cj.lziapi.com/api.php/providedown/vod/at/xml/&ct=1?ac=videolist")
*/

		开始获取()
	结束 事件
	事件 图片框1:被单击()
		变量 当前接口标题:文本集合
		循环(接口标题索引,0,内置接口标题.长度)
			如果 接口标题索引==当前接口 则
				当前接口标题.添加成员(内置接口标题[接口标题索引]+" ❤️")
			否则
				当前接口标题.添加成员(内置接口标题[接口标题索引])
			结束 如果
		结束 循环
		变量 接口选择弹窗:DX菜单
		接口选择弹窗.依附组件(线性布局2)
		接口选择弹窗.依附位置(DX对齐方式.居中)
		接口选择弹窗.菜单列表集合(当前接口标题)
		接口选择弹窗.显示()
		事件 接口选择弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
			当前接口=索引
			/*
			变量 通知 : DX通知
			通知.标题("操作成功")
			通知.内容("设置已生效")
			通知.成功图标()
			通知.显示()
			*/
			共享数据.置整数("影视选中接口",索引)
			返回 假
		结束 事件

	结束 事件

	事件 图片框1:被长按()
		获取列表.请求链接(内置接口链接[当前接口].截取文本("h","?",真))
		获取列表.GET()
		变量 分类标题集合:文本集合
		变量 分类索引集合:文本集合
		变量 分类列表结果内容:文本=获取列表.取结果().到文本()
		如果 分类列表结果内容.寻找文本("id")==-1则

		否则
			假如 分类列表结果内容.取文本左边(1)
				是 "{"
					变量 分类结果对象:JSON对象=分类列表结果内容
					变量 分类结果数组:JSON数组=分类结果对象.取JSON数组("class")
					循环(分类结果索引, 0, 分类结果数组.长度)
						分类标题集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("type_name"))
						分类索引集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取整数("type_id").到文本())
					结束 循环
					变量 分类查看弹窗:DX菜单
					分类查看弹窗.依附组件(线性布局2)
					分类查看弹窗.依附位置(DX对齐方式.居中)
					分类查看弹窗.菜单列表集合(分类标题集合)
					分类查看弹窗.显示()
					事件 分类查看弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
						输入搜索内容.内容="&t="+分类索引集合[索引]
						返回 假
					结束 事件
				是 "<"
					变量 分类结果对象:JSON对象=JsonAndXml.XML到JOSN(分类列表结果内容)
					变量 分类结果数组:JSON数组=分类结果对象.取JSON对象("rss").取JSON对象("class").取JSON数组("ty")
					循环(分类结果索引, 0, 分类结果数组.长度)
						分类标题集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("content"))
						分类索引集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("id"))
					结束 循环
					变量 分类查看弹窗:DX菜单
					分类查看弹窗.依附组件(线性布局2)
					分类查看弹窗.依附位置(DX对齐方式.居中)
					分类查看弹窗.菜单列表集合(分类标题集合)
					分类查看弹窗.显示()
					事件 分类查看弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
						输入搜索内容.内容="&t="+分类索引集合[索引]
						返回 假
					结束 事件
			结束 假如
		结束 如果
	结束 事件

	事件 搜索按钮:被单击()
		页码=1
		关键词=输入搜索内容.内容
		标题集合.清空()
		图片集合.清空()
		集数集合.清空()
		链接集合.清空()
		对象集合.清空()
		自定义宫格列表框1.更新项目(标题集合.长度())
		显示加载("正在搜索")
		开始获取()
	结束 事件

	事件 智能刷新布局1:下拉刷新事件()
		页码=1
		关键词=输入搜索内容.内容
		标题集合.清空()
		图片集合.清空()
		集数集合.清空()
		链接集合.清空()
		对象集合.清空()
		自定义宫格列表框1.更新项目(标题集合.长度())
		开始获取()
	结束 事件

	事件 智能刷新布局1:上拉加载事件()
		页码=页码+1
		显示加载("正在搜索")
		开始获取()
	结束 事件
	方法 开始获取()
		网络工具1.取网页源码(内置接口链接[当前接口]+"&pg="+页码.到文本()+"&wd="+关键词)
	结束 方法
	事件 网络工具1:取网页源码失败()
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		关闭加载()
		显示加载错误("获取失败")
	结束 事件
	事件 网络工具1:取网页源码结束(结果 : 文本,内容 : 字节[],cookie : 文本)
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		智能刷新布局1.启用下拉刷新功能 = 真
		智能刷新布局1.启用上拉加载功能 = 真

		如果 结果.寻找文本("http")==-1则
			关闭加载()
			显示加载错误("获取失败")
			弹出提示("接口已失效")
		否则
			变量 结果对象:JSON对象=结果
			如果 结果对象.取整数("code")!=1 则
				关闭加载()
				显示加载错误("获取失败")
			否则
				变量 结果数组:JSON数组=结果对象.取JSON数组("list")
				循环(影视项目索引, 0, 结果数组.长度())
					标题集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_name"))
					图片集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_pic"))
					集数集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_remarks"))
					链接集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_play_url"))
					对象集合.添加成员(结果数组.取JSON对象(影视项目索引))
				结束 循环
				关闭加载()
				提交到主线程运行(本对象)
				自定义宫格列表框1.更新项目(标题集合.长度())
				结束提交到主线程()
			结束 如果
		结束 如果
	结束 事件
	事件 自定义宫格列表框1:加载布局(索引 : 整数,项目布局 : 组件容器) : 组件容器
		变量 影视项目布局1:影视项目布局
		影视项目布局1.GIF动画框1.动画路径 = "png/jzdh.gif"
		Glide图片加载.加载图片(影视项目布局1.图片框1,图片集合[索引])
		影视项目布局1.文本框1.内容 = 标题集合[索引]
		影视项目布局1.文本框2.内容 = 集数集合[索引]
		返回 影视项目布局1
	结束 事件

	事件 自定义宫格列表框1:项目被单击(被单击组件 : 可视化组件,索引 : 整数)
		影视播放窗口.当前影视类型="数据对象"
		影视播放窗口.当前影视对象=对象集合[索引]
		切换窗口(影视播放窗口)
	结束 事件

	事件 文本框1:被单击()
		切换窗口(影视涩涩)
	结束 事件
	事件 文本框2:被单击()
		切换窗口(影视涩涩)
	结束 事件

结束 类

类 影视项目布局:组件容器

	@布局配置([[根布局=真,宽度=-1,高度=-2,纵向布局=真,背景颜色=-1576716,对齐方式=17]])
	变量 线性布局1 : 线性布局
	@布局配置([[父布局=线性布局1,背景颜色=-1,圆角=25,宽度DP=100,高度DP=170,@上外边距DP=5]])
	变量 卡片布局1 : 卡片布局
	@布局配置([[父布局=卡片布局1,宽度=-1,高度=-1]])
	变量 相对布局1 : 相对布局
	@布局配置([[父布局=相对布局1,宽度DP=40,高度DP=40,@位于布局中间=真]])
	变量 GIF动画框1 : GIF动画框
	@布局配置([[父布局=相对布局1,宽度=-1,高度=-1,拉伸方式=0]])
	变量 图片框1 : 图片框
	@布局配置([[父布局=相对布局1,宽度=-1,高度DP=20,对齐方式=17,字体大小=13,单行显示=真,省略显示=2,背景颜色=-2084388158,@位于布局底部=真]])
	变量 文本框2 : 文本框
	@布局配置([[父布局=线性布局1,对齐方式=17,@上外边距DP=5,@下外边距DP=5,单行显示=真,省略显示=2,宽度=-1]])
	变量 文本框1 : 文本框

结束 类

@附加清单.组件属性([[android:configChanges="orientation|screenSize|keyboardHidden"]])
类 影视播放窗口:窗口

	@布局配置([[根布局=真,宽度=-1,高度=-1,纵向布局=真,背景颜色=-1576716]])
	变量 线性布局1 : 线性布局
	@布局配置([[父布局=线性布局1,宽度=-1,高度=-1,启用下拉刷新功能=假,启用上拉加载功能=假]])
	变量 智能刷新布局1 : 智能刷新布局
	@布局配置([[父布局=智能刷新布局1,宽度=-1,高度=-1,纵向布局=真,背景颜色=-1576716]])
	变量 线性布局5 : 线性布局
	@布局配置([[父布局=线性布局5,宽度=-1,高度DP=230,背景颜色=-16777216]])
	变量 相对布局1 : 相对布局
	@布局配置([[父布局=相对布局1,宽度=-1,高度=-1]])
	变量 线性布局2 : 线性布局
	@布局配置([[父布局=线性布局2,宽度=-1,高度=-1]])
	变量 饺子播放器1 : 饺子播放器
	@布局配置([[父布局=线性布局5,宽度=-1,高度DP=40,对齐方式=16,左内边距DP=18,右内边距DP=18]])
	变量 线性布局3 : 线性布局
	@布局配置([[父布局=线性布局3,宽度DP=25,高度DP=25,@右外边距DP=10,图片资源="../../../素材/Png/weibiaoti-2-08.png"]])
	变量 图片框1 : 图片框
	@布局配置([[父布局=线性布局3,内容="正在播放  影视名称 — 第1集",单行显示=真,跑马灯效果=假,粗体=真]])
	变量 文本框1 : 文本框
	@布局配置([[父布局=线性布局5,宽度=-1,高度DP=80,对齐方式=17,纵向布局=假,左内边距DP=18,右内边距DP=18]])
	变量 线性布局4 : 线性布局
	@布局配置([[父布局=线性布局4,宽度DP=80,高度=-1,对齐方式=17,纵向布局=真]])
	变量 反馈按钮 : 线性布局
	@布局配置([[父布局=反馈按钮,宽度DP=30,高度DP=30,图片资源="../../../素材/Png/bfck1.png"]])
	变量 反馈图标 : 图片框
	@布局配置([[父布局=反馈按钮,宽度=-1,对齐方式=17,内容="举报",@上外边距DP=5,粗体=真]])
	变量 文本框2 : 文本框
	@布局配置([[父布局=线性布局4,宽度DP=80,高度=-1,对齐方式=17,纵向布局=真]])
	变量 下载按钮 : 线性布局
	@布局配置([[父布局=下载按钮,宽度DP=30,高度DP=30,图片资源="../../../素材/Png/bfck2.png"]])
	变量 下载图标 : 图片框
	@布局配置([[父布局=下载按钮,宽度=-1,对齐方式=17,内容="下载",@上外边距DP=5,粗体=真]])
	变量 文本框3 : 文本框
	@布局配置([[父布局=线性布局4,宽度DP=80,高度=-1,对齐方式=17,纵向布局=真]])
	变量 分享按钮 : 线性布局
	@布局配置([[父布局=分享按钮,宽度DP=30,高度DP=30,图片资源="../../../素材/Png/bfck3.png"]])
	变量 分享图标 : 图片框
	@布局配置([[父布局=分享按钮,宽度=-1,对齐方式=17,内容="分享",@上外边距DP=5,粗体=真]])
	变量 文本框4 : 文本框
	@布局配置([[父布局=线性布局4,宽度DP=80,高度=-1,对齐方式=17,纵向布局=真]])
	变量 投屏按钮 : 线性布局
	@布局配置([[父布局=投屏按钮,宽度DP=30,高度DP=30,图片资源="../../../素材/Png/bfck4.png"]])
	变量 投屏图标 : 图片框
	@布局配置([[父布局=投屏按钮,宽度=-1,对齐方式=17,内容="链接",@上外边距DP=5,粗体=真]])
	变量 文本框5 : 文本框
	@布局配置([[父布局=线性布局5,宽度=-1,高度DP=40,对齐方式=16,纵向布局=假,左内边距DP=18,右内边距DP=18,@上外边距DP=0]])
	变量 线性布局52 : 线性布局
	@布局配置([[父布局=线性布局52,宽度DP=25,高度DP=25,@右外边距DP=10,图片资源="../../../素材/Png/weibiaoti-2-10.png"]])
	变量 图片框6 : 图片框
	@布局配置([[父布局=线性布局52,内容="全部剧集",单行显示=真,粗体=真]])
	变量 文本框6 : 文本框
	@布局配置([[父布局=线性布局5,宽度=-1,高度=-1,左内边距DP=18,右内边距DP=18]])
	变量 线性布局9 : 线性布局
	@布局配置([[父布局=线性布局9,宽度=-1,高度=-1,显示滑块条=假,始终显示快速滚动条=假,列数=5,背景颜色=-1576716]])
	变量 自定义宫格列表框1 : 自定义宫格列表框

	@静态
	变量 当前影视类型:文本
	@静态
	变量 当前影视对象:JSON对象
	@静态
	变量 视频链接:文本
	@静态
	变量 视频标题:文本

	变量 播放索引:整数
	变量 视频标题集合:文本集合
	变量 视频链接集合:文本集合
	变量 缩放动画3 : 缩放动画扩增?
	事件 影视播放窗口:创建完毕()
		订阅事件()
		本对象.显示标题栏 =假
		本对象.状态栏字体黑色 = 假
		本对象.状态栏颜色 = 黑色
		本对象.导航栏颜色 = -1576716

		缩放动画3 = 缩放动画扩增.创建动画(0.7,1,0.7,1,0.5,0.5,缩放动画扩增.比例值_基于组件,缩放动画扩增.比例值_基于组件)
		缩放动画3.插值器 = 跳跃插值器.新建()
		缩放动画3.播放时间 = 300
		缩放动画3.保持最终状态 = 假
		播放索引=0
		视频标题集合.清空()
		视频链接集合.清空()
		自定义宫格列表框1.更新项目(视频标题集合.长度())
		假如 当前影视类型
			是 "数据对象"
				视频标题=当前影视对象.取文本("vod_name")
				变量 视频链接数组:文本集合=当前影视对象.取文本("vod_play_url").分割文本("#")
				循环(i,0,视频链接数组.长度())
					视频标题集合.添加成员(视频链接数组[i].截取文本("","$"))
					视频链接集合.添加成员(视频链接数组[i].截取文本("$",".m3u8")+".m3u8")
				结束 循环
				自定义宫格列表框1.更新项目(视频标题集合.长度())
				饺子播放器1.重置()
				播放列表视频()
			是 "直连对象"
				视频标题集合.添加成员("正片")
				视频链接集合.添加成员(视频链接)
				自定义宫格列表框1.更新项目(视频标题集合.长度())
				饺子播放器1.重置()
				播放列表视频()
		结束 假如

	结束 事件

	事件 自定义宫格列表框1:加载布局(索引 : 整数,项目布局 : 组件容器) : 组件容器
		变量 布局1 :剧集图片布局
		布局1.文本框1.内容 = 视频标题集合[索引]
		返回 布局1
	结束 事件
	事件 自定义宫格列表框1:项目被单击(被单击组件 : 可视化组件,索引 : 整数)
		饺子播放器1.重置()
		播放索引=索引
		播放列表视频()
	结束 事件
	方法 播放列表视频()
		文本框1.内容 = "正在播放  "+视频标题+" — "+视频标题集合[播放索引]
		饺子播放器1.置视频路径(视频链接集合[播放索引],视频标题集合[播放索引])
		饺子播放器1.自动播放()
	结束 方法

	@虚拟方法
	方法 返回键被按下()
		饺子播放器1.重置()
		视频链接=""
		视频标题=""
		播放索引=0
		视频标题集合.清空()
		视频链接集合.清空()
		自定义宫格列表框1.更新项目(视频标题集合.长度())
		父对象.返回键被按下()
	结束 方法
	事件 反馈按钮:被单击()
		反馈图标.播放动画(缩放动画3)
		切换窗口(问题反馈)
	结束 事件
	事件 下载按钮:被单击()
		下载图标.播放动画(缩放动画3)
		打开Uri(视频链接集合[播放索引])
		饺子播放器1.暂停播放()
	结束 事件
	事件 分享按钮:被单击()
		分享图标.播放动画(缩放动画3)
		分享操作.分享文本(本对象,视频标题+" — "+视频标题集合[播放索引]+"\n"+视频链接集合[播放索引])
	结束 事件
	事件 投屏按钮:被单击()
		投屏图标.播放动画(缩放动画3)
		置剪切板文本(本对象,视频链接集合[播放索引])
		弹出提示("视频链接已复制")
		//饺子播放器1.暂停播放()
		/*
		变量 投屏:DLNA投屏
		投屏.初始化(本对象)
		投屏.置投屏幕内容(视频链接集合[播放索引])
		投屏.搜索设备()
*/

	结束 事件

结束 类

类 剧集图片布局:组件容器

	@布局配置([[根布局=真,宽度=-1,高度=-1,对齐方式=17,背景颜色=-1576716]])
	变量 线性布局1 : 线性布局
	@布局配置([[父布局=线性布局1,宽度DP=65,高度DP=65,对齐方式=17,背景颜色=-1576716]])
	变量 线性布局2 : 线性布局
	@布局配置([[父布局=线性布局2,宽度DP=58,高度DP=58,卡片阴影=0,阴影=0,圆角=15]])
	变量 卡片布局1 : 卡片布局
	@布局配置([[父布局=卡片布局1,宽度=-1,高度=-1,对齐方式=17,水波纹效果=真]])
	变量 线性布局3 : 线性布局
	@布局配置([[父布局=线性布局3,宽度=-1,高度=-1,单行显示=真,对齐方式=17,字体颜色=-16777216,背景颜色=-854534,字体大小=12,内容="第一集",粗体=真]])
	变量 文本框1 : 文本框
	@布局配置([[父布局=线性布局3,宽度=0,高度=0]])
	变量 文本框3 : 文本框

结束 类

类 影视涩涩 : 窗口

	@布局配置([[根布局=真,宽度=-1,高度=-1,纵向布局=真,背景颜色=-1576716]])
	变量 线性布局1 : 线性布局
	@布局配置([[父布局=线性布局1,宽度=-1,高度DP=45,左内边距DP=18,右内边距DP=18,@上外边距DP=10]])
	变量 相对布局1 : 相对布局
	@布局配置([[父布局=相对布局1,对齐方式=16,内容="涩涩",粗体=真,字体大小=20,字体颜色=-16777216,高度=-1,ID=1]])
	变量 文本框1 : 文本框
	@布局配置([[父布局=相对布局1,高度=-1,内容="播放器",对齐方式=16,@位于某组件右边=1,@左外边距DP=1,纵向偏移DP=2,字体大小=16,粗体=真]])
	变量 文本框2 : 文本框
	@布局配置([[父布局=相对布局1,高度=-1,@位于布局右边=真,对齐方式=8388629,可视=真,宽度DP=120]])
	变量 线性布局2 : 线性布局
	@布局配置([[父布局=线性布局2,宽度DP=21,高度DP=21,图片资源="../../../素材/Png/切换.png"]])
	变量 图片框1 : 图片框
	@布局配置([[父布局=线性布局1,宽度=-1,高度=-2,对齐方式=1,纵向布局=真,左内边距DP=20,右内边距DP=20,上内边距DP=10]])
	变量 线性布局3 : 线性布局
	@布局配置([[父布局=线性布局3,宽度=-1,高度DP=40,圆角=75,卡片阴影=0,@下外边距DP=15]])
	变量 卡片布局1 : 卡片布局
	@布局配置([[父布局=卡片布局1,宽度=-1,高度=-1,透明度=1.0,背景颜色=-328966]])
	变量 线性布局4 : 相对布局
	@布局配置([[父布局=线性布局4,宽度=-1,高度=-1,左内边距DP=15,右内边距DP=3,上内边距DP=2,下内边距DP=2,@位于某组件左边=1]])
	变量 线性布局8 : 线性布局
	@布局配置([[父布局=线性布局8,宽度=-1,高度=-1,内边距=0,背景颜色=16777215,提示文本="输入搜索内容",单行输入=真,对齐方式=16,字体颜色=-16777216,单行显示=真,字体大小=16,粗体=真,内容="",显示光标=真]])
	变量 输入搜索内容 : 编辑框
	@布局配置([[父布局=线性布局4,宽度DP=60,高度=-1,ID=1,@位于布局左边=假,@位于布局右边=真]])
	变量 搜索按钮 : 相对布局
	@布局配置([[父布局=搜索按钮,圆角=75,卡片阴影=0,宽度=-1,横向偏移DP=-3,高度DP=35,@位于布局中间=真,@位于布局左边=假,@位于布局右边=真]])
	变量 卡片布局4 : 卡片布局
	@布局配置([[父布局=卡片布局4,宽度=-1,高度=-1,背景颜色=-11433996]])
	变量 线性布局7 : 线性布局
	@布局配置([[父布局=搜索按钮,圆角=0,卡片阴影=0,高度DP=35,@位于布局中间=真,背景颜色=-11433996,@位于布局右边=假,宽度DP=25,@位于布局左边=真]])
	变量 卡片布局5 : 卡片布局
	@布局配置([[父布局=搜索按钮,@位于布局中间=真,@位于布局右边=假,内容="搜索",粗体=真,字体大小=17,@右外边距DP=5,字体颜色=-1,@位于布局左边=假,横向偏移DP=-2]])
	变量 文本框3 : 文本框
	@布局配置([[父布局=线性布局1,宽度=-1,高度=-1,左内边距DP=20,右内边距DP=20]])
	变量 线性布局5 : 线性布局
	@布局配置([[父布局=线性布局5,宽度=-1,高度=-1,启用下拉刷新功能=假,启用上拉加载功能=假]])
	变量 智能刷新布局1 : 智能刷新布局
	@布局配置([[父布局=智能刷新布局1,宽度=-1,高度=-1,显示滑块条=假,始终显示快速滚动条=假,列数=3]])
	变量 自定义宫格列表框1 : 自定义宫格列表框

	变量 缩放动画3 : 缩放动画扩增?
	变量 页码:整数=1
	变量 网络工具1:网络工具
	变量 网络工具2:网络工具
	变量 网络工具3:网络工具
	变量 标题集合:文本集合
	变量 链接集合:文本集合
	变量 图片集合:文本集合
	变量 集数集合:文本集合
	变量 对象集合:集合
	变量 关键词:文本
	变量 当前接口:整数=0
	变量 内置接口链接:文本集合
	变量 内置接口标题:文本集合={"默认","可乐","115","老鸭","乐播","奶香","玉兔","奥斯卡","白嫖","美少女","淫水机","黄AV"}
	变量 接口来源站点:文本集合={"资源","资源","资源","资源","资源","资源","资源","资源","资源","资源","资源","资源"}
	变量 当前对象:文本
	变量 获取列表:Oks异步
	变量 寻觅分类:文本="0"
	事件 影视涩涩:创建完毕()
		订阅事件()
		本对象.屏幕方向 = 1
		本对象.显示标题栏 =假
		本对象.状态栏字体黑色 = 真
		本对象.状态栏颜色 = -1576716
		本对象.导航栏颜色 = -1576716
		code getWindow().setSoftInputMode(2);

		缩放动画3 = 缩放动画扩增.创建动画(0.7,1,0.7,1,0.5,0.5,缩放动画扩增.比例值_基于组件,缩放动画扩增.比例值_基于组件)
		缩放动画3.插值器 = 跳跃插值器.新建()
		缩放动画3.播放时间 = 300
		缩放动画3.保持最终状态 = 假
		共享数据.初始化(本对象,"影视涩涩接口")
		当前接口=共享数据.取整数("影视涩涩选中接口")

		//0_默认
		内置接口链接.添加成员("https://dadiapi.com/api.php?ac=videolist")
		//1_可乐
		内置接口链接.添加成员("https://kkzy.me/api.php/provide/vod/at/json/?ac=videolist")
		//2_115
		内置接口链接.添加成员("https://155api.com/api.php/provide/vod/from/155m3u8/at/json/?ac=videolist")
		//3_老鸭
		内置接口链接.添加成员("https://api.apilyzy.com/api.php/provide/vod/at/json?ac=videolist")
		//4_乐播
		内置接口链接.添加成员("https://lbapi9.com/api.php/provide/vod/from/lbm3u8/at/json/?ac=videolist")
		//5_鲨鱼
		//内置接口链接.添加成员("http://sybyapi.com/api.php/provide/vod/at/json/?ac=videolist")
		//6_探探
		//	内置接口链接.添加成员("https://apittzy.com/api.php/provide/vod/?ac=list")
		//7_草榴
		//内置接口链接.添加成员("https://www.caoliuzyw.com/api.php/provide/vod/at/json/")
		//8_奶香
		内置接口链接.添加成员("https://naixxzy.com/api.php/provide/vod/at/json?ac=videolist")
		//9_玉兔
		内置接口链接.添加成员("https://apiyutu.com/api.php/provide/vod/at/json/?ac=videolist")
		//10_奥斯卡
		内置接口链接.添加成员("https://aosikazy.com/api.php/provide/vod/at/json?ac=videolist")
		//11_白嫖
		内置接口链接.添加成员("https://www.kxgav.com/api/xml.php?ac=videolist")
		//12_美少女
		内置接口链接.添加成员("https://www.msnii.com/api/xml.php?ac=videolist")
		//13_淫水机
		内置接口链接.添加成员("https://www.xrbsp.com/api/xml.php?ac=videolist")
		//14_黄AV
		内置接口链接.添加成员("https://www.pgxdy.com/api/xml.php?ac=videolist")
		//寻觅
		//内置接口链接.添加成员("http://fsvibrantnutritionandhealth.com/api/videosort")
		//直播
		//内置接口链接.添加成员("http://api.hclyz.com:81/mf/jsoncaihong.txt")
		//内置接口链接.添加成员("http://api.hclyz.com:81/mf/jsonhuaguoshan.txt")
		开始获取()
	结束 事件
	事件 图片框1:被单击()
		图片框1.播放动画(缩放动画3)
		变量 当前接口标题:文本集合
		循环(接口标题索引,0,内置接口标题.长度)
			如果 接口标题索引==当前接口 则
				当前接口标题.添加成员(内置接口标题[接口标题索引]+" ❤️")
			否则
				当前接口标题.添加成员(内置接口标题[接口标题索引])
			结束 如果
		结束 循环
		变量 接口选择弹窗:DX菜单
		接口选择弹窗.依附组件(线性布局2)
		接口选择弹窗.依附位置(DX对齐方式.居中)
		接口选择弹窗.菜单列表集合(当前接口标题)
		接口选择弹窗.显示()
		事件 接口选择弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
			当前接口=索引
			共享数据.置整数("影视涩涩选中接口",索引)
			返回 假
		结束 事件

	结束 事件

	事件 图片框1:被长按()
		假如 接口来源站点[当前接口]
			是 "资源"
				获取列表.请求链接(内置接口链接[当前接口].截取文本("h","?",真))
				获取列表.GET()
				变量 分类标题集合:文本集合
				变量 分类索引集合:文本集合
				变量 分类列表结果内容:文本=获取列表.取结果().到文本()
				如果 分类列表结果内容.寻找文本("id")==-1则

				否则
				假如 分类列表结果内容.取文本左边(1)
					是 "{"
						变量 分类结果对象:JSON对象=分类列表结果内容
						变量 分类结果数组:JSON数组=分类结果对象.取JSON数组("class")
						循环(分类结果索引, 0, 分类结果数组.长度)
							分类标题集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("type_name"))
							分类索引集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取整数("type_id").到文本())
						结束 循环
						变量 分类查看弹窗:DX菜单
						分类查看弹窗.依附组件(线性布局2)
						分类查看弹窗.依附位置(DX对齐方式.居中)
						分类查看弹窗.菜单列表集合(分类标题集合)
						分类查看弹窗.显示()
						事件 分类查看弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
							输入搜索内容.内容="&t="+分类索引集合[索引]
							返回 假
						结束 事件
					是 "<"
						变量 分类结果对象:JSON对象=JsonAndXml.XML到JOSN(分类列表结果内容)
						变量 分类结果数组:JSON数组=分类结果对象.取JSON对象("rss").取JSON对象("class").取JSON数组("ty")
						循环(分类结果索引, 0, 分类结果数组.长度)
							分类标题集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("content"))
							分类索引集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("id"))
						结束 循环
						变量 分类查看弹窗:DX菜单
						分类查看弹窗.依附组件(线性布局2)
						分类查看弹窗.依附位置(DX对齐方式.居中)
						分类查看弹窗.菜单列表集合(分类标题集合)
						分类查看弹窗.显示()
						事件 分类查看弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
							输入搜索内容.内容="&t="+分类索引集合[索引]
							返回 假
						结束 事件
				结束 假如
			结束 如果
			是 "寻觅"
				获取列表.请求链接(内置接口链接[当前接口])
				获取列表.GET()
				变量 分类标题集合:文本集合
				变量 分类索引集合:文本集合
				变量 分类列表结果内容:文本=获取列表.取结果().到文本()
				如果 分类列表结果内容.寻找文本("id")==-1则

				否则
					变量 分类结果对象:JSON对象=分类列表结果内容
					变量 分类结果数组:JSON数组=分类结果对象.取JSON数组("rescont")
					循环(分类结果索引, 0, 分类结果数组.长度)
						分类标题集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取文本("name"))
						分类索引集合.添加成员(分类结果数组.取JSON对象(分类结果索引).取整数("id").到文本())
					结束 循环
					变量 分类查看弹窗:DX菜单
					分类查看弹窗.依附组件(线性布局2)
					分类查看弹窗.依附位置(DX对齐方式.居中)
					分类查看弹窗.菜单列表集合(分类标题集合)
					分类查看弹窗.显示()
					事件 分类查看弹窗:列表被点击(索引 : 整数,内容 : 文本) : 逻辑型
						输入搜索内容.内容=分类标题集合[索引]
						寻觅分类=分类索引集合[索引]
						返回 假
					结束 事件
				结束 如果
		结束 假如
	结束 事件
	事件 搜索按钮:被单击()
		页码=1
		关键词=输入搜索内容.内容
		标题集合.清空()
		图片集合.清空()
		集数集合.清空()
		链接集合.清空()
		对象集合.清空()
		自定义宫格列表框1.更新项目(标题集合.长度())
		显示加载("正在搜索")
		开始获取()
	结束 事件

	事件 智能刷新布局1:下拉刷新事件()
		页码=1
		关键词=输入搜索内容.内容
		标题集合.清空()
		图片集合.清空()
		集数集合.清空()
		链接集合.清空()
		对象集合.清空()
		自定义宫格列表框1.更新项目(标题集合.长度())
		开始获取()
	结束 事件

	事件 智能刷新布局1:上拉加载事件()
		页码=页码+1
		显示加载("正在加载")
		开始获取()
	结束 事件
	方法 开始获取()
		假如 接口来源站点[当前接口]
			是 "资源"
				网络工具1.取网页源码(内置接口链接[当前接口]+"&pg="+页码.到文本()+"&wd="+关键词)
			是 "寻觅"
				如果 寻觅分类=="0"则
					网络工具2.取网页源码(内置接口链接[当前接口]+"/0?page="+页码.到文本()+"&uuid=1&serach="+关键词)
				否则
					网络工具2.取网页源码(内置接口链接[当前接口]+"/"+寻觅分类+"?page="+页码.到文本()+"&uuid=1")
				结束 如果
		结束 假如
	结束 方法

	事件 网络工具2:取网页源码失败()
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		关闭加载()
		显示加载错误("获取失败")
	结束 事件
	事件 网络工具2:取网页源码结束(结果 : 文本,内容 : 字节[],cookie : 文本)
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		智能刷新布局1.启用下拉刷新功能 = 真
		智能刷新布局1.启用上拉加载功能 = 真

		如果 结果.寻找文本("http")==-1则
			关闭加载()
			显示加载错误("获取失败")
			弹出提示("接口已失效")
		否则
			当前对象="直连对象"
			变量 结果对象:JSON对象=结果
			变量 结果数组:JSON数组=结果对象.取JSON对象("rescont").取JSON数组("data")
			循环(影视项目索引, 0, 结果数组.长度())
				标题集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("title"))
				图片集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("coverpath"))
				集数集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("authername"))
				链接集合.添加成员(内置接口链接[当前接口]+"/"+结果数组.取JSON对象(影视项目索引).取整数("id").到文本()+"?uuid=1")
				对象集合.添加成员(结果数组.取JSON对象(影视项目索引))
			结束 循环
			关闭加载()
			提交到主线程运行(本对象)
			自定义宫格列表框1.更新项目(标题集合.长度())
			结束提交到主线程()
		结束 如果

	结束 事件

	事件 网络工具1:取网页源码失败()
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		关闭加载()
		显示加载错误("获取失败")
	结束 事件
	事件 网络工具1:取网页源码结束(结果 : 文本,内容 : 字节[],cookie : 文本)
		智能刷新布局1.结束刷新()
		智能刷新布局1.结束加载()
		智能刷新布局1.启用下拉刷新功能 = 真
		智能刷新布局1.启用上拉加载功能 = 真

		如果 结果.寻找文本("http")==-1则
			关闭加载()
			显示加载错误("获取失败")
			弹出提示("接口已失效")
		否则
			假如 结果.取文本左边(1)
				是 "{"
					当前对象="数据对象"
					变量 结果对象:JSON对象=结果
					如果 结果对象.取整数("code")!=1 则
						关闭加载()
						显示加载错误("获取失败")
					否则
						变量 结果数组:JSON数组=结果对象.取JSON数组("list")
						循环(影视项目索引, 0, 结果数组.长度())
							标题集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_name"))
							图片集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_pic"))
							集数集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_remarks"))
							链接集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("vod_play_url"))
							对象集合.添加成员(结果数组.取JSON对象(影视项目索引))
						结束 循环
						关闭加载()
						提交到主线程运行(本对象)
						自定义宫格列表框1.更新项目(标题集合.长度())
						结束提交到主线程()
					结束 如果
				是 "<"
					当前对象="直连对象"
					变量 结果对象:JSON对象=JsonAndXml.XML到JOSN(结果)
					变量 结果数组:JSON数组=结果对象.取JSON对象("rss").取JSON对象("list").取JSON数组("video")
					循环(影视项目索引, 0, 结果数组.长度())
						标题集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("name"))
						图片集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("pic"))
						集数集合.添加成员(结果数组.取JSON对象(影视项目索引).取文本("type"))
						链接集合.添加成员(结果数组.取JSON对象(影视项目索引).取JSON对象("dl").取JSON对象("dd").取文本("content").截取文本("http",".m3u8",真))
						对象集合.添加成员(结果数组.取JSON对象(影视项目索引))
					结束 循环
					关闭加载()
					提交到主线程运行(本对象)
					自定义宫格列表框1.更新项目(标题集合.长度())
					结束提交到主线程()
			结束 假如
		结束 如果
	结束 事件
	事件 自定义宫格列表框1:加载布局(索引 : 整数,项目布局 : 组件容器) : 组件容器
		变量 影视项目布局1:影视项目布局
		影视项目布局1.GIF动画框1.动画路径 = "png/jzdh.gif"
		Glide图片加载.加载图片(影视项目布局1.图片框1,图片集合[索引])
		影视项目布局1.文本框1.内容 = 标题集合[索引]
		如果 标题集合[索引]==""则
			影视项目布局1.文本框1.可视 = 假
		结束 如果
		影视项目布局1.文本框2.内容 = 集数集合[索引]
		返回 影视项目布局1
	结束 事件

	事件 自定义宫格列表框1:项目被单击(被单击组件 : 可视化组件,索引 : 整数)
		影视播放窗口.当前影视类型=当前对象
		假如 接口来源站点[当前接口]
			是 "资源"
				影视播放窗口.视频链接=链接集合[索引]
			是 "寻觅"
				置剪切板文本(本对象,链接集合[索引])
				变量 取链接:Oks异步
				取链接.请求链接(链接集合[索引])
				取链接.GET()
				变量 链接对象:JSON对象=取链接.取结果().到文本()
				影视播放窗口.视频链接=链接对象.取JSON对象("rescont").取文本("videopath")
				置剪切板文本(本对象,链接对象.取JSON对象("rescont").取文本("videopath"))
		结束 假如
		影视播放窗口.视频标题=标题集合[索引]
		影视播放窗口.当前影视对象=对象集合[索引]
		切换窗口(影视播放窗口)
	结束 事件
	事件 文本框1:被单击()
		//切换窗口(涩涩主页)
	结束 事件
	事件 文本框2:被单击()
		//切换窗口(涩涩主页)
	结束 事件


	事件 输入搜索内容:内容被改变()
		如果 输入搜索内容.内容==""则
			寻觅分类="0"
		结束 如果
	结束 事件

结束 类